import dayjs from "dayjs";

export function initialization(e) {
  const list = [
    "01 06 00 88 01 7c",
    "01 06 00 00 00 08",
    "01 03 00 00 00 01",
    "01 03 00 01 00 01",
  ];
  // console.log(list[e - 1]);
  return list[e - 1];
}

// RTC模块
export function RTCModel(e) {
  let a;
  if (e === 1) {
    a = realTime();
    // console.log(a);
  }
  if (e === 2) {
    a = "01 06 00 00 00 01";
  }
  if (e === 3) {
    a = "01 03 00 00 00 01";
  }
  if (e === 4) {
    a = "01 03 00 03 00 01";
  }
  if (e === 5) {
    a = "01 03 00 01 00 01";
  }
  return a;
}

function realTime() {
  // 01 03 00 14 00 06 85 cc 查询传入时间
  if (dayjs().second() <= 53) {
    let x =
      "01 10 00 14 00 06 12 00 " +
      hexChange(dayjs().year().toString().slice(2, 4)) +
      " 00 " +
      hexChange(dayjs().month() + 1) +
      " 00 " +
      hexChange(dayjs().date()) +
      " 00 " +
      hexChange(dayjs().hour()) +
      " 00 " +
      hexChange(dayjs().minute()) +
      " 00 " +
      hexChange(dayjs().second());
    return x;
  } else {
    setTimeout(() => {
      realTime();
    }, 500);
  }
}

// 十进制转十六进制 补0
function hexChange(val) {
  //   console.log(val);
  let hex = parseInt(val).toString(16);
  hex = hex.length === 1 ? "0" + hex : hex;
  return hex.toUpperCase();
}

// ADC模块 4
export function ADCModel(e) {
  const list = [
    ["01", "06", "00", "00", "00", "02"],
    ["01", "03", "00", "00", "00", "01"],
    ["01", "03", "00", "04", "00", "01"],
    ["01", "03", "00", "01", "00", "01"],
  ];
  // console.log(list[e - 1]);
  return list[e - 1].join(" ");
}

// 频率模块 4
export function FrequencyModel(e) {
  const list = [
    ["01", "06", "00", "00", "00", "03"],
    ["01", "03", "00", "00", "00", "01"],
    ["01", "03", "00", "05", "00", "01"],
    ["01", "03", "00", "01", "00", "01"],
  ];
  // console.log(list[e - 1]);
  return list[e - 1].join(" ");
}

// DI模块 4
export function DIModel(e) {
  const list = [
    ["01", "06", "00", "00", "00", "04"],
    ["01", "03", "00", "00", "00", "01"],
    ["01", "03", "00", "06", "00", "01"],
    ["01", "03", "00", "01", "00", "01"],
  ];
  return list[e - 1].join(" ");
}

// DO模块 4
export function DOModel(e) {
  const list = [
    ["01", "06", "00", "00", "00", "05"],
    ["01", "03", "00", "00", "00", "01"],
    ["01", "03", "00", "07", "00", "01"],
    ["01", "03", "00", "01", "00", "01"],
  ];
  return list[e - 1].join(" ");
}

// EEPROM模块 4
export function EepromModel(e) {
  const list = [
    ["01", "06", "00", "00", "00", "06"],
    ["01", "03", "00", "00", "00", "01"],
    ["01", "03", "00", "08", "00", "01"],
    ["01", "03", "00", "01", "00", "01"],
  ];
  return list[e - 1].join(" ");
}

// LED、KEY、屏幕 4
export function LEDModel(e) {
  let a = ["01", "06", "00", "02", "00", "AA"];
  return a.join(" ");
}

// 写入初始化参数 5
export function CshModel(e) {
  const list = [
    ["01", "10", "00", "78", "00", "09", "12"], //在首地址120的连续9个寄存器中写入序列号
    ["01", "06", "00", "00", "00", "07"],
    ["01", "03", "00", "00", "00", "01"],
    ["01", "03", "00", "09", "00", "01"],
    ["01", "03", "00", "01", "00", "01"],
  ];
  // console.log(list[e - 1]);
  return list[e - 1].join(" ");
}

// 关闭电源 2
export function CloseSourceModel(e) {
  const list = [
    ["01", "06", "00", "00", "00", "09"],
    ["01", "03", "00", "00", "00", "01"],
  ];
  // console.log(list[e - 1]);
  return list[e - 1].join(" ");
}
